#pragma once
#include <windows.h>

class CPlayer
{
public:
	CPlayer(void);
	~CPlayer(void);

	virtual char* GetName() {return m_cName;};
	virtual int GetDirection() {return m_iDirection;}
	virtual int GetBalance() {return m_iBalance;};
	virtual POINT GetPosition() {return m_Position;};
	virtual int GetOrder() {return m_iOrder;};
	virtual int GetAIstatus() {return m_iAIstatus;};
	virtual int GetIcon() {return m_iIcon;};

	virtual void SetIcon(int i) {m_iIcon = i;};
	virtual void SetName(char *c);
	virtual void SetOrder(int order) {m_iOrder = order;};
	virtual void SetPosition(POINT position) {m_Position = position;};
	virtual void SetDirection(int direction) {m_iDirection = direction;};

	virtual void ClearPossibleDirection();
	virtual void SetPossibleDirection(bool right, bool left, bool up, bool down);
	virtual void GetPossibleDirection(bool &right, bool &left, bool &up, bool &down);

	virtual void SetRob(int rob) {m_iRob = rob;};
	virtual void AddRob(int rob) {m_iRob += rob;};
	virtual void SubRob(int rob) {m_iRob -= rob;};
	virtual int GetRob() {return m_iRob;};

	virtual void AddBalance(int add) {m_iBalance += add;};
	virtual void SubBalance(int sub) {m_iBalance -= sub;};

private:
	int m_iBalance;
	char m_cName[20];
	int m_iDirection;
	POINT m_Position;
	int m_iOrder;
	int m_iAIstatus;
	int m_iIcon;
	int m_iRob;

	// possible of directions
	bool m_bIsRight;
	bool m_bIsLeft;
	bool m_bIsUp;
	bool m_bIsDown;
};
